package com.tsyz.servlet.domain.mapstruct;

import com.tsyz.servlet.domain.bo.resq.UserGetUserByIdRespBO;
import com.tsyz.servlet.domain.dto.UserDTO;
import com.tsyz.servlet.domain.dto.req.UserGetUserByIdReqDTO;
import com.tsyz.servlet.domain.dto.resq.UserGetUserByIdRespDTO;
import com.tsyz.servlet.domain.vo.req.UserDeleteUserReqVO;
import com.tsyz.servlet.domain.vo.req.UserGetUserByIdReqVO;
import com.tsyz.servlet.domain.vo.req.UserUpdateReqVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

/**
 * 项目名称: java-learning-records <br>
 * *********************************<br>
 * 包路径: com.tsyz.servlet.domain.mapstruct <br>
 * *********************************<br>
 * 描述: <br>
 *
 * @author ext.zhaoke14 <br>
 * @version 1.0 <br>
 * @date 2025/10/29 下午2:23
 */

@Mapper
public interface UserGetUserByIdReqDTOMapper {

    /**
     * 单例对象
     */
    UserGetUserByIdReqDTOMapper INSTANCE = Mappers.getMapper(UserGetUserByIdReqDTOMapper.class);

    UserGetUserByIdReqDTO voToDto(UserUpdateReqVO reqVo);

    UserGetUserByIdReqDTO voToDto(UserDeleteUserReqVO reqVo);

    UserGetUserByIdReqDTO voToDto(UserGetUserByIdReqVO reqVo);

    UserGetUserByIdRespDTO boToDto(UserGetUserByIdRespBO respBo);


    UserDTO dtoToDto(UserGetUserByIdRespDTO respDTO);
}
